There have been many computer based workflow applications with the purpose of automating aspects of processes such as business processes or manufacturing processes. In general, workflow applications for automating business processes automate the flow of documents and other information between persons in order to fulfil the requirements of a particular process and to track the progress of the process.
A workflow process typically consists of a number of tasks or activities, each of which might have documents or data associated with it, and a number of interrelationships between the activities determining the order of execution of the activities.
Since workflow processes are specific to particular businesses, generalized workflow applications must incorporate some method of specifying and/or customizing workflow processes to suit the particular business. Common methods for specifying or customizing workflow processes include writing configuration files such as text files or XML files; using an editor with a tabular format; and using a graphical workflow builder.
In the prior art, graphical workflow builders typically provide a range of icons representing various activities, in addition to connectors such as arrows that can be drawn between the icons in order to create a graphical representation of the workflow process.
FIG. 2 is an exemplary diagram showing a graphical workflow builder of the prior art. A window 201, representing a graphical user interface formed upon a computer display, contains a plurality of icons 202, each of which represents a particular activity in the workflow. Connectors 203 show the routing of the workflow between the activities. Each connector shows a label representing a condition that would result in the connector being followed.
While this style of graphical workflow builder is an effective means for designing and representing workflow processes, such is found to be difficult to implement effectively because of complex graphical and spatial arrangement requirements. This is especially the case in software environments that do not provide rich graphical display capabilities, such as in an application for display in a web browser. In addition, the use of common graphical workflow builders requires the user to possess the ability to create a relatively complex spatial arrangement in a freeform graphical space.
Non-graphical methods of specifying workflow processes such as configuration files and tabular editors do not provide the same ease of use as a graphical workflow builder; especially in the case where the user is a specialist in the business processes being specified rather than being a specialist in information systems.